//实现轮播图片二进制上传
$('#file').on('change', function() {
    //当管理员选择文件的时候

    //首先拿到管理员选择的文件
    var file = this.files[0];
    //创建formdata对象，实现二进制文件上传
    var formData = new FormData();
    //将管理员选择的二进制文件添加到formData对象中
    formData.append('image', file);
    //向服务器端发送请求，实现文件上传
    $.ajax({
        type: 'post',
        url: '/upload',
        data: formData,
        //不处理formdata参数的格式，formData对象内容已经处理好了
        processData: false,
        //不设置contentType属性值，formData对象内容已经设置好了
        contentType: false,
        success: function(response) {
            //将服务器端返回的图片地址重新赋值给隐藏域
            $('#image').val(response[0].image)
        },
        error: function() {
            alert('图片上传失败！');
        }
    })
})


//实现整个轮播图表单的上传功能
$('#slidesForm').on('submit', function() {
    //获取管理员在表单中输入的内容
    var formdata = $(this).serialize();
    //向服务器端发送请求，添加轮播图数据
    $.ajax({
        type: 'post',
        url: '/slides',
        data: formdata,
        success: function() {
            //重载页面
            location.reload();
        },
        error: function() {
            alert('数据上传失败!');
        }
    });
    //阻止表单默认提交的行为
    return false;
})


//向服务器端发送请求，索要图片轮播列表数据
$.ajax({
    url: '/slides',
    type: 'get',
    success: function(response) {
        //模板拼接
        var html = template('slidesTpl', { data: response });
        //模板渲染
        $('#slideBox').html(html);
    },
    error: function() {

    }
})


//删除轮播图片功能
$('#slideBox').on('click', '.delete', function() {
    //向管理员确认是否要删除
    if (confirm('您是否确认删除该图片？')) {
        //获取id
        var id = $(this).attr('data-id');
        //发送请求，删除数据
        $.ajax({
            url: '/slides/' + id,
            type: 'delete',
            success: function() {
                alert('删除成功！');
                //重载页面
                location.reload();
            },
            error: function() {
                alert('删除失败！')
            },
        })
    }
})